在 BigQuery 的費用監控中,其實大部分都是運算費用居多,儲存費用是占比很小的。
不過我們還是有監控資料表的靜態資訊,看看容量大、又長時間沒有人更新的資料表在哪裡(是誰又偷偷在測試新玩意後放置不管?)這部分與 Cloud Storage 相似,成本或許會是其次,重點是維持資料庫的整潔。
接下來就要講到運算費用的監控啦!
概念上,我們會將 BigQuery 的運算費用分成幾類:
而我們要怎麼找出這些類別,分別去看出是誰花的錢呢?
就是如此,基本上靠這兩個資料源,我們就可以知道運算是從哪裡發生的!
什麼服務在使用、誰在使用,有沒有哪些地方突然有大量的運算需求,誰這個月突然使用特別多(哦?很認真工作喔?)
由於這些資料轉換都是透過 dbt 的資料模型來處理,可以加上 testing 來讓我們及時捕捉到異常的使用行為!
對於在意費用的團隊,我想這應該是蠻必須的工程。
除了異常行為之外,我們也可以看到下游業務單位中最常使用的儀表板有哪些,進而去反思在資料需求上的處理政策(不要看一個人問了什麼,要看一個人做了什麼)。要是有人提了各式各樣的需求,理由寫得天花亂墜,結果最後做出來的儀表板每張都沒看幾次,我們就知道這是真需求、還是假需求了。